Optimizing audio processing functions by dynamically compensating for variable distances between speaker(s) and microphone(s) in a mobile device

ABSTRACT

Mobile communication devices, having multiple speakers and/or microphones to perform a number of audio functions, for use with mobile devices, are provided. The microphones may be housed within the communication device housing. To compensate for the unwanted signal feedback between the speakers and microphones, acoustic echo cancellation may be implemented to determine the proper distance and relative location between the speakers and microphones. Acoustic echo cancellation removes the echo from voice communications to improve the quality of the sound. The removal of the unwanted signals captured by the microphones may be accomplished by characterizing the audio signal paths from the speakers to the microphones (speaker-to-microphone path distance profile), including the distance and relative location between the speakers and microphones. The optimal distance and relative location between the speakers and microphones is provided to the user to optimize performance.

CLAIM OF PRIORITY UNDER 35 U.S.C. §119

The present application for patent claims priority to U.S. ProvisionalApplication No. 61/576,842 entitled “Optimizing Audio ProcessingFunctions by Dynamically Compensating for Variable Distances BetweenSpeaker(s) and Microphone(s) in an Accessory Device and/or MobileDevice” filed Dec. 16, 2011, as well as U.S. Provisional Application No.61/616,853 entitled “Optimizing Audio Processing Functions byDynamically Compensating for Variable Distances Between Speaker(s) andMicrophone(s) in a Mobile Device” filed Mar. 28, 2012, and assigned tothe assignee hereof and hereby expressly incorporated by referenceherein.

BACKGROUND

1. Field

Various features pertain to optimizing audio processing functions bydynamically compensating for variable distances and positions betweenone or more speakers and one or more microphones in an accessory deviceand/or a mobile device.

2. Background

Mobile devices are continuously evolving to add new features and/orenhance existing features. With the goal of improving audio quality, aplurality of different speakers may be used in a mobile device toenhance how a user receives audio. For instance, speakers may bedistributed at various positions and/or locations of a mobile device.Likewise, to improve the capture of audio from the user, a plurality ofmicrophones may be placed at various locations and/or positions of themobile device. However, such arrangement of speakers and microphonestends to result in unwanted signal feedback from signals emanating fromthe plurality of speakers that are being captured by the plurality ofmicrophones.

To compensate for the unwanted signal feedback, acoustic echocancellation may be implemented. Acoustic echo cancellation can removeecho from voice communications to improve the quality of the sound, i.e.the echo cancellation algorithm can remove signals emanating from thespeakers from desired user audio that are being captured by themicrophones. The removing of the unwanted signals captured by themicrophones requires characterizing the audio signal paths from thespeakers to the microphones, including the distance and relativelocation between the speakers and microphones. However, suchcharacterization is difficult to do when the microphones and/or speakerscan be moved and/or its position/distance adjusted relative to eachother.

Consequently, a method is needed that allows an accessory device and/ora mobile device to automatically and/or dynamically ascertain relativedistances and positions between speakers and microphones.

SUMMARY

Various features facilitate the optimization of audio processingfunctions by dynamically compensating for variable distances andpositions between one or more speakers and one or more microphones in anaccessory device and/or a mobile device.

One feature provides mobile devices for such optimizing audio processingfunctions. These mobile devices may include a plurality of speakers, aplurality of microphones, wherein a position of at least one of theplurality of microphones is variably adjustable relative to one or moreof the plurality of speakers and a processing circuit coupled to thespeakers and the plurality of microphones. The processing circuit may beadapted to automatically ascertain one or more distances between each ofthe speakers in the plurality of speakers and each of the microphones inthe plurality of microphones to obtain a speaker-to-microphone pathdistance profile. Using the speaker-to-microphone path distance profile,the processing circuit may adjust an echo canceller. The processingcircuit may further be adapted to estimate a distance between eachspeaker and each microphone to ascertain the speaker-to-microphone pathdistance profile, estimate a signal-to-noise ratio (SNR) as a ratio of anear-end user speech signal to an echo signal, and adjust far endreference scaling for the echo canceller based on the estimatedsignal-to-noise ratio. The processing circuit may also be adapted toreduce or limit speaker volume if the signal-to-noise ratio is below athreshold and provide a visual indicator to a user to increasespeaker-to-microphone distance in order to increase volume.

In one configuration, at least some of the plurality of speakers aredetachable from the mobile device. Additionally, the mobile device mayinclude one arms housing at least one of the microphones, where the armsare extendable, rotationally adjustable, or both. The one or moredistances between each speaker and each microphone may be received froman accessory device, the accessory device having one or more armshousing at least one of the microphones, where the arms are extendable,rotationally adjustable, or both. Predefined detents in the one or morearms may be used to determine the one or more distances between eachspeaker and each microphone. Alternatively, or in addition to, angularrotation sensors in the one or more arms may be used to determine theone or more distances between each speaker and each microphone.

Methods operational in mobile devices are also provided according to afeature for optimizing audio processing functions. In at least oneimplementation of such methods, for instance, a mobile device mayautomatically ascertain one or more distances between each speaker in aplurality of speakers and each microphone in a plurality of microphonesto obtain a speaker-to-microphone path distance profile. An echocanceller may be adjusted using the speaker-to-microphone path distanceprofile. The mobile device may also automatically obtain speaker volumesettings and estimate a signal-to-noise ratio and associatednon-linearity based on the speaker-to-microphone distance profile andvolume settings. Based on estimated signal-to-noise ratio, the mobiledevice may adjust far end reference scaling for the echo canceller.Furthermore, the mobile device may reduce or limit speaker volume if thesignal-to-noise ratio is below a threshold and change thespeaker-to-microphone path distance profile by adjusting one or moreextendable and/or rotationally adjustable arms housing the plurality ofspeakers.

The one or more distances between each speaker and each microphone maybe received from an accessory device, the accessory device having one ormore arms housing at least one of the microphones, where the arms areextendable, rotationally adjustable, or both. Predefined detents in theone or more arms may be used to determine the one or more distancesbetween each speaker and each microphone. Alternatively, or in additionto, angular rotation sensors in the one or more arms may be used todetermine the one or more distances between each speaker and eachmicrophone.

Another feature provides a mobile device optimizing audio processingfunctions that includes means for automatically ascertaining one or moredistances between each speaker in a plurality of speakers and eachmicrophone in a plurality of microphones to obtain aspeaker-to-microphone path distance profile and means for adjusting anecho canceller using the speaker-to-microphone path distance profile.The mobile device may further include means for automatically obtainingspeaker volume settings; means for estimating a signal-to-noise ratioand associated non-linearity based on the speaker-to-microphone distanceprofile and volume settings; means for adjusting far end referencescaling for the echo canceller based on the estimated signal-to-noiseratio; means for reducing or limiting speaker volume if thesignal-to-noise ratio is below a threshold; and means for changing thespeaker-to-microphone path distance profile by adjusting one or moreextendable and/or rotationally adjustable arms housing the plurality ofspeakers.

Another feature provides a machine-readable medium having instructions,which when executed by at least one processor causes the processor to:automatically ascertain one or more distances between each speaker in aplurality of speakers and each microphone in a plurality of microphonesto obtain a speaker-to-microphone path distance profile; adjust an echocanceller using the speaker-to-microphone path distance profile;automatically obtain speaker volume settings; and estimate asignal-to-noise ratio and associated non-linearity based on thespeaker-to-microphone distance profile and volume settings.

Yet another feature provides mobile devices for optimizing audioprocessing functions that may include a memory device, a communicationinterface adapted to communicate with an accessory device, having aplurality of speakers and/or a plurality of microphones for broadcastingor capturing acoustic signals on behalf of the mobile device, togenerate an audio profile and a processing circuit, coupled to thecommunication interface and the memory device. The processing circuitmay be adapted to send a calibration audio signal to the accessorydevice to estimate a distance between each microphone and each speakerin the accessory device, receive an estimated distance between eachmicrophone and each speaker from the accessory device, generate aspeaker-to-microphone path distance profile using estimated distancesbetween each microphone and each speaker in the accessory device, andadjust an echo canceller using the speaker-to-microphone path distanceprofile. The calibration audio signal is sent to each speaker in theplurality of speakers independently, sequentially, and/or one speaker ata time. The processing circuit may be further adapted to use capturedaudio from a user to generate the speaker-to-microphone path distanceprofile, estimate a signal-to-noise ratio (SNR) as a ratio of a near-enduser speech signal to an echo signal to and adjust far end referencescaling for the echo canceller based on the estimated signal-to-noiseratio. The processing circuit may be still further adapted to obtainspeaker volume settings using the speaker-to-microphone distanceprofile, estimate a signal-to-noise ratio and associated non-linearitybased on the speaker-to-microphone distance profile and volume settingsand send a signal to the accessory device to reduce or limit speakervolume if the signal-to-noise ratio is below a threshold. The processingcircuit may also be adapted to provide a visual indicator to the user toincrease speaker-to-microphone distance on the accessory device in orderto increase volume.

Yet another feature provides a method operational on a mobile device forcommunicating with an accessory device to generate an audio profile. Theaccessory device communicating with the mobile device may have aplurality of microphones and/or a plurality of speakers. In at least oneimplementation of such methods, for instance, a mobile device may send acalibration audio signal to the accessory device to estimate a distancebetween each microphone and each speaker in the accessory device,receive an estimated distance between each microphone and each speakerfrom the accessory device, generate a speaker-to-microphone pathdistance profile using estimated distances between each microphone andeach speaker in the accessory device; and adjust an echo canceller usingthe speaker-to-microphone path distance profile. The captured audio froma user may be used to generate the speaker-to-microphone path distanceprofile. The mobile device may also obtain speaker volume settings usingthe speaker-to-microphone distance profile, estimate a signal-to-noiseratio and associated non-linearity based on the speaker-to-microphonedistance profile and volume settings, and adjust far end referencescaling for the echo canceller based on the estimated signal-to-noiseratio. The mobile device may also reduce or limit speaker volume if thesignal-to-noise ratio is below a threshold.

Yet another feature provides a mobile device for communicating with anaccessory device to generate an audio profile. The mobile device mayinclude means for sending a calibration audio signal to the accessorydevice to estimate a distance between each microphone and each speakerin the accessory device; means for receiving an estimated distancebetween each microphone and each speaker from the accessory device;means for generating a speaker-to-microphone path distance profile usingestimated distances between each microphone and each speaker in theaccessory device; and means for adjusting an echo canceller using thespeaker-to-microphone path distance profile. The mobile device mayfurther include means for using captured audio from a user to generatethe speaker-to-microphone path distance profile; means for automaticallyobtaining speaker volume settings using the speaker-to-microphonedistance profile; means for estimating a signal-to-noise ratio andassociated non-linearity based on the speaker-to-microphone distanceprofile and volume settings; means for adjusting far end referencescaling for the echo canceller based on the estimated signal-to-noiseratio; and means for reducing or limiting speaker volume if thesignal-to-noise ratio is below a threshold.

Yet another feature provides a machine-readable medium havinginstructions, which when executed by at least one processor causes theprocessor to: send a calibration audio signal to the accessory device toestimate a distance between each microphone and each speaker in theaccessory device; receive an estimated distance between each microphoneand each speaker from the accessory device; generate aspeaker-to-microphone path distance profile using estimated distancesbetween each microphone and each speaker in the accessory device; andadjust an echo canceller using the speaker-to-microphone path distanceprofile. The processor may also obtain speaker volume settings using thespeaker-to-microphone distance profile; and estimate a signal-to-noiseratio and associated non-linearity based on the speaker-to-microphonedistance profile and volume settings.

BRIEF DESCRIPTION OF THE DRAWINGS

Various features, nature, and advantages may become apparent from thedetailed description set forth below when taken in conjunction with thedrawings in which like reference characters identify correspondinglythroughout.

FIG. 1 (comprising FIGS. 1A and 1B) illustrates perspective views of anexemplary accessory device in a closed configuration, according to oneexample.

FIG. 2 illustrates the accessory device of FIG. 1 in an openconfiguration.

FIG. 3 illustrates an accessory device, in an open configuration, havinga plurality of speakers and slideably adjustable microphones, accordingto one example.

FIG. 4 illustrates an accessory device, in an open configuration, havinga plurality of speakers and rotatably adjustable microphones, accordingto one example.

FIG. 5 illustrates an accessory device, in an open configuration, havingat least one speaker and at least one flippably adjustable microphone,according to one example.

FIG. 6A illustrates a top view of an accessory device with an extendablebar in a closed or stowed configuration, according to one example.

FIG. 6B illustrates a top view of the accessory device with theextendable bar of FIG. 6B in an open or deployed configuration.

FIG. 6C illustrates a front view of the extendable bar of FIG. 6B.

FIG. 6D illustrates a front view the extendable bar of FIG. 6B.

FIG. 7A illustrates a front view of an accessory device with anextendable bar in an open or deployed configuration, according to oneexample.

FIG. 7B illustrates a top view of the accessory device with theextendable bar of FIG. 7A in a closed or stowed configuration.

FIG. 7C illustrates a top view of the accessory device with theextendable bar of FIG. 7A in an open or deployed configuration.

FIG. 8 illustrates direct paths of sound propagation in an accessorydevice having eight (8) speakers and four (4) microphones.

FIG. 9 illustrates a block diagram of an internal structure of anaccessory device according to one example.

FIG. 10 illustrates an example of the internal structure of the audiomodule of FIG. 9.

FIG. 11 illustrates a flow diagram of a method, operational on anaccessory device, for measuring distances between speakers andmicrophones and communicating the distances to audio processingalgorithms in a mobile device.

FIG. 12 illustrates a block diagram of an internal structure of a mobiledevice according to one example.

FIG. 13 (comprising FIGS. 13A and 13B) illustrates an acoustic echocancellation algorithm that utilizes the speaker-to-microphonedistance(s) data to optimize performance.

FIG. 14 (comprising FIGS. 14A and 14B) illustrates a flow diagram of amethod, operational on a mobile device, for creating an audio profileusing an external accessory device.

DETAILED DESCRIPTION

In the following description, specific details are given to provide athorough understanding of the embodiments. However, it will beunderstood by one of ordinary skill in the art that the embodiments maybe practiced without these specific detail. For example, circuits may beshown in block diagrams in order avoid obscuring the embodiments inunnecessary detail. In other instances, well-known circuits, structuresand techniques may not be shown in detail in order not to obscure theembodiments.

The word “exemplary” is used herein to mean “serving as an example,instance, or illustration.” Any implementation or embodiment describedherein as “exemplary” is not necessarily to be construed as preferred oradvantageous over other embodiments. Likewise, the term “embodiments”does not require that all embodiments include the discussed feature,advantage or mode of operation.

The term “mobile device” may refer to a wireless device, a mobile phone,a mobile communication device, a user communication device, personaldigital assistant, mobile palm-held computer, a laptop computer, and/orother types of mobile devices typically carried by individuals and/orhaving some form of communication capabilities (e.g., wireless,infrared, short-range radio, etc.). The term “accessory device” mayrefer to any device capable of communicating with a mobile device eitherwired or wirelessly and having one or more speakers and/or one or moremicrophones for broadcasting or capturing acoustic signals on behalf ofthe mobile device. The term “audio transducer” may refer to any devicecapable of capturing audio (e.g., microphones) and/or transmitting audio(e.g., speakers).

The term “closed configuration” or “stowed configuration” may refer to amobile device and/or accessory device in which speakers and/ormicrophones are placed or arranged in a compact way for storage ortransport of the mobile device and/or accessory device. The term “openconfiguration” or “deployed configuration” may refer to a mobile deviceand/or accessory device in which speakers and/or microphones areslideably or rotatable moved from a stowed position.

Overview

Accessory devices, having multiple loudspeakers (or “speakers”) andmicrophones to perform a number of audio functions, for use with mobiledevices, are provided. Since consumers (or “users”) desire to carry ortransport the accessory devices along with the mobile device, accessorydevices may be designed small in order to enhance their transportabilitywhile at the same time allowing for them to be deployed in a largerconfiguration to perform its intended functions. To accommodatetransportability, accessory devices may be operable between a closed orstowed configuration for transport or storage and one or more open ordeployed configurations to perform their intended functions. As such,the speakers and microphones may be variably adjustable relative to eachother. However, this variability can lead to unwanted signal feedbackbetween the speakers and microphones.

To compensate for the unwanted signal feedback between the speakers andmicrophones, the mobile device may implement acoustic echo cancellationwhich removes echo from voice communications to improve the quality ofthe sound. The removing of the unwanted signals captured by themicrophones may be accomplished by characterizing the audio signal pathsfrom the speakers to the microphones, including the distance andrelative location between the speakers and microphones and then usingthis characterization or path distance profile to adjust the echocanceller (algorithm) in the mobile device. To adjust the echocanceller, the mobile device may estimate a distance between eachspeaker and each microphone and then use this information to estimate asignal-to-noise ratio (SNR) as a ratio of a near-end user speech signalto an echo signal. The estimated SNR may then be used to adjustparameters and thresholds for tuning echo canceller performance such aslearning rates, far end reference scaling, double talk detectorthresholds, etc. Furthermore, if the SNR is below a threshold value, thespeaker volume may be reduced or limited for better double talkperformance and to avoid non-linear coupling between the microphones andspeakers. Alternatively, if a louder volume is desired, visual feedbackmay be provided to the user instructing the user to physically adjustthe microphone to speaker distance.

Accessory Device in a Closed Configuration

FIG. 1 (comprising FIGS. 1A and 1B) illustrates perspective views of anexemplary accessory device 100 in a closed or stowed configuration fortransport or storage by a user. The accessory device 100 may comprise apair of housings 102, 104 (See FIG. 2) that may be folded together abouta hinge assembly 106 to form the closed configuration. Each of thehousings 102, 104 may have a pair of side edges 102 a, 104 a and 102 b,104 b, a top edge 102 c, 110 c and bottom edge 102 d, 104 d (See FIG.2). The housings 102, 104 may be joined together by the hinge assembly106 secured to the side edges 102 b, 104 a. A plurality of speakers 108,110, and one or more extendable bars 112, 114 may be attached to therespective housings 102, 104.

The one or more extendable bars 112, 114 may be slideably attached to aback surface of the housings 102, 104 or may be slideably attached tothe side edges 102 a, 104 a and 102 b, 104 b. Each of the extendablebars 112, 114 may include one or more microphones and may be slideablyand/or rotationally adjustable relative to the housings 102, 104 foradjusting the spacing between the microphones and the speakers. Asdescribed in more detail below, the extendable bars 112, 114 may alsoinclude sensors, such as angular rotation sensors and the like, and/ordetents for determining the distance between the microphones and thespeakers. Additionally, the speakers may be fixedly attached to thehousings or may be adjustable with respect to the housings.

When in the closed configuration, the accessory device 100 may easilyfit within a pocket, briefcase or the like of the user for storage ortransport. The accessory device 100 may communicate wired or wirelesslywith a mobile device.

Exemplary Accessory Device in an Open Configuration

FIG. 2 illustrates the exemplary accessory device 100 of FIG. 1 in anopen configuration. The open configuration of the accessory device 100may allow the accessory device 100 to perform all of its intendedfunctions. For example, to improve audio quality, a plurality ofdifferent speakers may be used in the accessory device to enhance howthe user receives audio. As shown, each housing 102, 104 of theaccessory device 100 may include one or more speakers 108 and 110(fixedly or adjustably attached to the housing), respectively and one ormore microphones located on each of the extendable bars 112 and 114located at various positions and/or locations.

As described above, the accessory device 100 may be foldable and, inthis example, the microphones may be rotationally adjustable and/orslideably adjustable as part of one or more extendable bars 112 and 114.Consequently, the distance and/or position of the microphones relativeto the speakers 108 and 110 may change depending on how the userpositions and/or adjusts the extendable bar(s).

Each housing 102, 104 may be operable to move or rotate about the hingeassembly 106 such that the distance between the outer edges 102 a, 104 bof the housings varies. In one example, when the accessory device 100 isin the closed configuration, the first housing 102 may be rotated in therange of 0° to 180° counterclockwise about the hinge assembly 106. Whenin a completely open configuration, the first housing 102 may rotateclockwise in the range of 0° to 180°. Alternatively, the second housing104 may rotate counterclockwise or clockwise relative to the firsthousing 102. In yet another embodiment, each of the housings may be ableto rotate up to 360° relative to the other housing.

As shown, the extendable bars 112, 114 may be slideably and rotatablyadjustable relative to the housings 102, 104 allowing the user to adjustthe microphones and speakers to obtain the desired audio quality. Assuch, the distance between the microphones and the speakers may bedynamically adjusted by the user.

As illustrated in FIGS. 3-5, other accessory device configurations arepossible where one or more microphones and/or speakers may have theirrelative position and/or distance dynamically adjusted by the userduring operation of the accessory device. In some instances, thespeakers and/or microphones may be wired and/or wirelessly coupled tothe body of a mobile device.

FIG. 3 illustrates an accessory device, in an open configuration, havinga plurality of speakers and slideably adjustable microphones, accordingto one example. As shown, the accessory device 300 may include a housing302 having a plurality of speakers 304 located at fixed locations and aplurality of microphones 306 that may be slideably adjustable as part ofone or more extendable bars 308. For example, the microphones 306 may befixedly located on the extendable bars 308 which may be adjustable byslideably extending upwardly from the housing 302. Consequently, thedistance and/or position of the microphones 306 relative to the speakers304 may change depending on how the user slideably adjusts theextendable bar(s) 308. Although four (4) extendable bars 308 are shown,this is by way of example only and more or less extendable bars mayattached to the housing 302. Each of the extendable bars 308 may beslideably adjusted upwards or downwards separately or collectively.Alternatively, the positions of the speakers may adjustable by the user.

FIG. 4 illustrates an accessory device, in an open configuration, havinga plurality of speakers and rotatably adjustable microphones, accordingto one example. As shown, the accessory device 400 may include a housing402 having plurality of speakers 404 located at fixed locations and aplurality of microphones 406 that may be rotatably adjustable as part ofone or more extendable bars 408. When in an open configuration, theextendable bars 408 may be rotated via a rotatable hinge assembly 410.As shown, when in the closed or stowed configuration, a first pair ofextendable bars 408 a may be parallel to the side surface of the housing402 and a second pair of extendable bars 408 b may be parallel to thetop and bottom surfaces of the housing 402. In this example, the firstpair extendable bars 408 a may be rotated in the range of 0° to 180°counterclockwise or clockwise via the rotatable hinge assembly 410 andthe second pair of extendable bars 408 b may be rotated in the range of0° to 90° counterclockwise or clockwise via a second rotatable hingeassembly 412. Alternatively, the positions of the speakers mayadjustable by the user. In one embodiment, when in the closed or stowedconfiguration, the first pair of extendable bars 408 a may beperpendicular to the second pair of extendable bars 480 b.

FIG. 5 illustrates an accessory device, in an open configuration, havingat least one speaker and at least one flippably adjustable microphone,according to one example. As shown, the accessory device 500 may includea housing 502 having at least one speaker 504 located at a fixedlocation and at least one microphone 506 that may be rotatablyadjustable as part of one or more extendable bars 508. For example, themicrophone 506 may be fixedly attached to the end of an extendable bar508 which is rotatably attached to the housing via a rotatable hingeassembly 510. When in a closed configuration, the extendable bar 508 mayrest against or be embedded within the housing 502. In this example,when the accessory device is in a closed configuration, to adjust themicrophone 506 the extendable bar may be rotated in the range of 0° to270° clockwise via the rotatable hinge assembly 510. As described inmore detail below, the extendable bars may also include sensors, such asangular rotation sensors and the like, and/or detents for determiningthe distance between the microphones and the speakers. Additionally, thespeakers 504 may be fixedly attached to the housing 502 or may beadjustable.

Exemplary Microphones/Extendable Bars Configurations

FIG. 6A illustrates a top view of an accessory device with an extendablebar in a closed or stowed configuration, according to one example. FIG.6B illustrates a top view of the accessory device with the extendablebar of FIG. 6B in an open or deployed configuration. FIG. 6C illustratesa front view of the extendable bar of FIG. 6B. FIG. 6D illustrates afront view the extendable bar of FIG. 6B.

As discussed above, an accessory device 600 may include a housing 602having one or more microphones 604, fixedly attached to one or moreextendable bars 606, and one or more speakers (not shown). Asillustrated in FIG. 6A, the accessory device 600 may include anextendable bar 606 having three (3) moveable/adjustable sections 606a-606 c rotatably secured together. Both the first and second sections606 a, 606 b of the extendable bar 606 may have a first end rotatablyhinged to the housing 602 and a second end rotatably hinged torespective ends of the third section 606 c of the extendable bar 606. Inthis example, when in the closed or stowed configuration, the first andsecond sections 606 a, 606 b of the extendable bar 606 may be parallelto the third section of the extendable bar 606 c and the third section606 c of the extendable bar 606 may be located within a differentvertical plane than the first and second sections 606 a, 606 bextendable bar 606.

The extendable bar 606 may be adjusted or re-positioned by rotatingupwards via rotatable hinges 612. As illustrated in FIG. 6C, first andsecond sections 606 a, 606 b of the extendable bar 606 may be rotatedupwardly. The first and second sections 606 a, 606 b of the extendablebar 606 may be rotated in the range of 0° to 180° (clockwise orcounterclockwise) from the closed or stowed configuration. When not inuse and when being transported, the first and second sections 606 a, 606b of the extendable bar 606 may be rotated downwardly to the closed orstowed configuration. The first and second sections 606 a, 606 b of theextendable bar 606 may be moved separately or collectively. Furthermore,the sections of the extendable bar 606 may also include sensors, such asangular rotation sensors and the like, and/or detents for determiningthe distance between the microphones and the speakers.

FIG. 7A illustrates a front view of an accessory device with anextendable bar in an open or deployed configuration, according to oneexample. FIG. 7B illustrates a top view of the accessory device with theextendable bar of FIG. 7A in a closed or stowed configuration. FIG. 7Cillustrates a top view of the accessory device with the extendable barof FIG. 7A in an open or deployed configuration.

As discussed above, an accessory device 700 may include a housing 702having one or more microphones 704 fixedly attached to one or moreextendable bars 706 and one or more speakers (not shown). As illustratedin FIG. 7A, the accessory device 700 may include an extendable bar 706having three (3) moveable/adjustable sections 706 a-706 c rotatablysecured together. The first section 706 a of the extendable bar 706 mayhave a first end rotatably hinged to the housing 702 and the secondsection 706 b of the accessory device 700 may have a first end slideablyreceived within a slot 708, extending horizontally along a top edge of aside of the housing, allowing the second section 706 b of the extendablebar 706 to slide horizontally across the accessory device 700. Thesecond end of the first section 706 a of the extendable bar 706 may berotatably hinged to a first end of the third section 706 c of theextendable bar 706 and the second end of the second section 706 b of theextendable bar 706 may be rotatably hinged to the second end of thethird section 706 c of the extendable bar 706.

The first and second sections 706 a, 706 b of the extendable bar 706 maybe rotated in the range of 0° to 360° (clockwise or counterclockwise)from the closed or stowed configuration. When not in use and when beingtransported, the first and second sections 706 a, 706 b of theextendable bar 706 may be rotated downwardly to the closed or stowedconfiguration.

Ascertaining Paths of Sound Propagation

An accessory device having multiple speakers and multiple microphonesmay have a plurality of sound propagation paths in which the soundreceived by one or more microphones travels to one or more speakers.FIG. 8 illustrates direct paths of sound propagation in an accessorydevice having eight (8) speakers and four (4) microphones. A mobiledevice may utilize an acoustic echo canceller and volume controlfunctions to dynamically compensate for variable distances between oneor more speakers and/or one or more microphones in an accessory deviceand/or the mobile device to optimize performance of the mobile device.In order to implement such dynamic functions, the processing circuitthat implements such functions in the mobile device has to know thedistances from each speaker to each microphone in the accessory deviceso that the acoustic echo cancelling and/or volume control algorithmscan be fine-tuned based on the actual device configuration employed bythe user. As shown, an accessory device having eight (8) speakers andfour (4) microphones may result in 32 direct paths of sound propagation.

There are various methods known in the art that are available to measurethe distance between the speakers and the microphones. According to oneimplementation, mechanical methods may be used to ascertain the distancebetween speakers and microphones. For instance, predefined detentslocated in the extendable bars where the microphones are located may beused to ascertain distances (e.g., by having sensors or other electricalmethods that detect the selected extendable bar position and translatethat to a physical distance). Similarly, predefined detents may be usedwhere the extendable bars are rotationally adjustable.

According to another approach, angular rotation sensors for theextendable bars may serve to electrically determine the current angularsetting of the extendable bars and translate that to a physicaldistance. That is, sensors located on extendable bars may detect to whatangle the extendable bars have been rotated. This information may thenbe sent to the acoustic echo canceller (algorithm) on the mobile device.Using this information, the echo canceller can provide a visual feedbackto the user to physically adjust the microphone to speaker distance. Thevisual feedback may be provided on the display of the mobile deviceand/or the accessory device, if available.

In yet another approach, acoustic methods, which are well known in theart, may be used to obtain audio ranging measurements to determine thephysical path from each speaker to each microphone. The audio rangingmeasurements may be sent to the acoustic echo canceller (algorithm) onthe mobile device. Using this information, the echo canceller canprovide a visual feedback to the user to physically adjust themicrophone to speaker distance. The visual feedback may be provided onthe display of the mobile device and/or the accessory device, ifavailable.

Exemplary Accessory Device and Operations Therein

FIG. 9 illustrates a block diagram of an internal structure of anaccessory device according to one example. The accessory device 900 mayinclude an audio module/circuit 902 having a speaker module 904 forproducing sound in response to an electrical audio signal input and amicrophone module 906 for converting sound into an electrical signal.The audio module/circuit 902 may optionally include a processing circuit(e.g., processor, processing module, etc.) 903 for executingcomputer-executable process steps. The accessory device 900 may includeone or more audio transducers (e.g., microphones and/or speakers), wherethe transducer-to-transducer spacing is manually adjustable. Theaccessory device is configured/adapted to obtain atransducer-to-transducer path distance profile and provide it to amobile device which can then act to perform echo cancellation and/orvolume adjustments by instructing a user of the accessory device toadjust distances between the one or more transducers.

The speaker module 904 may include, or be coupled to, one or morespeakers 916 a and 916 b and the microphone module 906 may include, orbe coupled to, one or more extendable and/or rotationally adjustablebars/arms housing one or more microphones 918 a and 918 b. The speakers916 and/or microphones 918 may be generically referred to as audiotransducers. In one embodiment, within the microphone module 906, theone or more adjustable bars may also house detents and/or sensors 912for determining the distance between the speakers and the microphones.The accessory device 900 may also include a communication interface 908for communicatively coupling (wired or wirelessly) the accessory device900 to a mobile device 910. Optionally, the accessory device 900 mayinclude a visual indicator module 914 for providing visual feedback to auser to manually adjust microphone-to-speaker spacing of the one or morespeakers and the one or more microphones housed on the accessory deviceto adjust the speaker-to-microphone path distance profile. The visualindicator module may be a display or one or more lights, such as lightemitting diodes (LED). The display may provide a written message to theuser to adjust the speaker-to-microphone path distance profile while theLEDs may be used to provide a visual indication in the form of lights orpattern of lights to the user to adjust the speaker-to-microphone pathdistance profile.

FIG. 10 illustrates an example of the internal structure of the audiomodule 902 of FIG. 9. The audio module 902 may be used to implement aloudness control algorithm. The loudness control algorithm may be usedto automatically reduce or increase sound to a pre-defined level orthreshold.

The Digital Gain (1002, 1020), Analog Gain (1008, 1016) for both speakerand microphone paths may be controlled by software and dynamicallyadjusted by the processing circuit of the mobile device. The loudnesscontrol algorithm makes use of the direct path loss, which is a functionof microphone to speaker distance, and adjusts the digital and/or analoggains in the speaker path to ensure that the audio output does notsaturate the microphone input.

In the speaker module 904, located in the audio module 902, a digitalgain 1002 and a digital input 1004 from a digital signal processor maybe input into a multiplier 1005. The multiplied signal may then be inputinto a digital-to-analog converter (DAC) 1006. The analog output signalfrom the DAC 1006 may be provided to a first variable amplifier 1008controlled by software and dynamically adjusted by the processingcircuit of the mobile device. The output of the first variable amplifier1008 may then be input into a second variable amplifier 1010 which maybe adjusted by a user. The output of the second variable amplifier 1010may be sent to a speaker 1012.

A microphone 1014 in the microphone module 906 may receive sound fromthe speaker 1012 and convert the sound into an electrical signal. Theelectrical signal may then be sent to a third variable amplifier 1016where an analog gain may be controlled by software and dynamicallyadjusted by the processing circuit of the mobile device. The electricalsignal output from the third amplifier 1016 may be input into ananalog-to-digital converter (ADC) 1018 where is it converted into adigital signal. The digital signal and a digital gain 1020 may then beprovided to a multiplier 1021 and the multiplied signal may be sent tothe digital signal processor 1022.

FIG. 11 illustrates a flow diagram of a method, operational on anaccessory device, for measuring distances between audio transducers(e.g., speakers and microphones) and communicating the distances toaudio processing algorithms in a mobile device. This may permit themobile device to perform echo cancellation, for example, in conjunctionwith the accessory device. The accessory device may have a firstplurality of audio transducers (e.g., microphones and/or speakers)located on one more adjustable bars/arms and/or a second plurality ofaudio transducers located elsewhere on the accessory device or externalto the accessory device.

First, the accessory device may be powered on 1102. A user may thenmanually adjust the transducer-to-transducer spacing of the firstplurality of transducers 1104. For instance, a user may slideably,rotatably, and/or flippably adjust one or more extendable and/orrotationally adjustable arms/bar(s), housing the first plurality oftransducers (e.g., microphones and/or speakers) in the accessory device.

Once adjusted, the accessory device may ascertain the one or moredistances between audio transducers in a first plurality of audiotransducers, coupled to the extendible and/or rotationally adjustablearms of the accessory device, and the second plurality of audiotransducers to obtain a transducer-to-transducer path distance profile1106. In one example, the accessory device may automatically ascertainthe one or more distances by sending an audible or higher than audiblefrequency signal and measuring the shortest time delay between when thesignal was sent and when it was received between a first audiotransducer from the first plurality of audio transducers and a secondaudio transducer from the second plurality of audio transducers.Ascertaining the one or more distances may involve (a) encoding theaudible or higher than audible frequency signal into an encoded signalthat reduces the impact of noise sources during transmission, and/or (b)monitoring for a code correlation between the encoded signal andreceived signals, by audio transducers from the first plurality of audiotransducers and the second plurality of audio transducers, to ascertaina match. Furthermore, the one or more distances may be refined by usingtemperature and humidity information to select a speed of soundpropagation from a lookup table. In another example, ascertaining theone or more distances may include sending higher than audible frequencysound, through at least one audio transducer from the first plurality ofaudio transducers and the second plurality of audio transducers, at ahigher volume than the audible sound to raise the higher than audiblefrequency sound above an ambient noise floor.

In one example, a distance between two audio transducers, from the firstplurality and second plurality of audio transducers, may be determinedbased on the position of predefined detents in one or more extendableand/or rotationally adjustable arms that are part of the accessorydevice and to which the first plurality of audio transducers arecoupled.

In another example, least some of the one or more distances may bedetermined based on the position indicated by one or more sensorslocated in one or more extendable and/or rotationally adjustable armsthat are part of the accessory device and to which the first pluralityof audio transducers are coupled.

In some implementations, the accessory device may ascertain a distancebetween one or more microphone audio transducers, from at least one ofthe first plurality or second plurality of audio transducers, and one ormore speaker audio transducers as a user interface to control otherfunctions of the accessory device or a mobile device.

The transducer-to-transducer path distance profile may then be sent to amobile device for processing with an acoustic echo canceller (algorithm)1108.

The accessory device may ascertain a volume for at least some of theaudio transducers in the first plurality of transducers or secondplurality of transducers 1110. The volume may be sent to the mobiledevice to determine a signal to noise ratio 1112. For instance, suchsignal to noise ratio may serve to ascertain whether volume fromspeakers needs to be increased. That is, if the signal to noise ratio isbelow a threshold, then the mobile device may instruct the accessorydevice to increase the volume from one or more speaker audiotransducers.

The accessory device may then receive adjustments, from the mobiledevice, to the transducer-to-transducer path distance profile tooptimize performance of the mobile device 1114. In one example, theadjustments may then be provided to the user in the form of visualfeedback providing the user to manually adjust atransducer-to-transducer spacing between the audio transducers in thefirst plurality and second plurality of audio transducers 1116. That is,the transducer-to-transducer path distance profile allows the user todynamically compensate for the variable distances between the speakertransducers and the microphone transducers in the accessory device tooptimize performance of the mobile device.

In one example, the maximum volume limit of one or more speaker audiotransducers, from at least one of the first plurality or secondplurality of audio transducers, may be adjusted based on a distance fromthe speaker audio transducers to one or more microphone audiotransducers.

Exemplary Mobile Device and Operations Therein

FIG. 12 illustrates a block diagram of an internal structure of a mobiledevice 1200 according to one example. The mobile device 1200 may includea processing circuit (e.g., processor, processing module, etc.) 1202 forexecuting computer-executable process steps and a memory device 1204.The mobile device 1200 may also include a communication interface 1206for communicatively coupling the mobile device 1200 to a wirelesscommunication network and/or an accessory device 1208. Thememory/storage device 1204 may include operations (instructions) forstoring speaker-to-microphone path distance profiles 1210. Theprocessing circuit 1202 may implement these operations using acousticecho canceller algorithms 1212 and loudness control algorithms 1214which are known in the art.

Note that, in other examples, the mobile device may include a pluralityof speakers 1216 a and 1216 b and/or microphones 1218 a and 1218 b alonga plurality of different surfaces and/or sides of the mobile device.

FIG. 13 (comprising FIGS. 13A and 13B) illustrates a flow diagram of amethod, operational on a mobile device, for optimizing performance byremoving the acoustic echoes resulting from the acoustic couplingbetween the speaker(s) and the microphone(s).

Here, an acoustic echo cancellation (AEC) algorithm (or echo canceller)may be implemented within a processing circuit of a mobile device 1302.The echo canceller may automatically receive or obtain one or morespeaker-to-microphone distances (e.g., mechanically and/or acousticallyascertained as described above) between each speaker in a plurality ofspeakers and each microphone in a plurality of microphones to obtain aspeaker-to-microphone path distance profile 1304. As described above,the one or more distances may be obtained using predefined detentsand/or angular rotation sensors located on the extendable bars or theone or more distances may be obtained using acoustic methods. Using thespeaker-to-microphone path distance profile, the echo canceller may beadjusted to remove the acoustic echoes 1306. Adjusting the echocanceller allows for optimizing performance by removing the acousticechoes resulting from the acoustic coupling between the speaker(s) andthe microphone(s).

Next, the mobile device may automatically ascertain the speaker volumesettings for the plurality of speakers based on the previously obtainedpath distance profile 1308. That is, the path distance profile providesthe location of each speaker allowing the speaker volume settings to beobtained. The volume settings of the speakers may be readily availableif the processing circuit is coupled to or in communication with thespeakers and serves to adjust the volume to the speakers to optimize theperformance to reduce or eliminate the echoes.

The mobile device, via the echo canceller, may then estimate asignal-to-noise ratio (SNR) as a ratio of a near-end user signal to anecho signal based on the path distance profile and the volume settings1310 obtained previously. Based on the estimated SNR, the far endreference scaling for the echo canceller may be adjusted 1312.

Next, a determination is made as to whether the SNR is below apre-determined threshold for optimal performance 1314. If the SNR is notbelow the threshold, the echo canceller (i.e. the algorithm) is exited1322. However, if it is determined that the SNR is below thepre-determined threshold, the speaker volume (i.e. the volume setting oneach speaker) may be reduced or limited 1316.

Next, a determination is made as to whether a louder volume for theplurality of speakers is desired by the user 1318. If louder volume forthe plurality of speakers is not desired, the echo canceller (i.e. thealgorithm) may be exited 1322. However, if it is determined that loudervolume is desired for the plurality of speakers, visual feedback may beprovided to the user instructing the user to physically adjust, forexample increase, the microphone-to-speaker distance 1320. As discussedabove, adjusting the microphone-to-speaker distance may optimize theacoustic performance. The visual feedback may be provided to the user onthe display of a mobile device or a display on an accessory if theaccessory device has one. Once visual feedback has been provided to theuser and the user has adjusted the distance, the echo canceller (i.e.the algorithm) may be exited 1322.

In one implementation, a speaker-to-microphone path distance profile maybe dynamically and/or automatically obtained by a processing circuit ofthe mobile device. For instance, the processing circuit may be adaptedto send a calibration audio signal from each speaker (e.g.,independently, sequentially, and/or one speaker at a time) and sensed byeach microphone to estimate a distance between each microphone andspeaker. Additionally, the processing circuit may use captured audio(from a user) to generate the speaker-to-microphone path distanceprofile.

FIG. 14 (comprising FIGS. 14A and 14B) illustrates a flow diagram of amethod, operational on a mobile device, for creating an audio profileusing an external accessory device. As described above, the externalaccessory device may include a plurality of speakers and/or a pluralityof microphones for broadcasting or capturing acoustic signals on behalfof the mobile device

Here, an acoustic echo cancellation (AEC) algorithm (or echo canceller)may be implemented within a processing circuit of the mobile device1402. First, the mobile device may send a calibration audio signal tothe accessory to estimate a distance between each microphone and eachspeaker in the accessory device 1404. Next, the mobile device mayreceive, from the accessory device, an estimated distance between eachmicrophone and each speaker 1406. Using the estimated distances betweeneach microphone and each speaker in the accessory device, aspeaker-to-microphone distance profile may be generated 1408. Thespeaker-to-microphone path distance profile may then be used to adjustan echo canceller to remove the acoustic echoes 1410. Adjusting the echocanceller allows for optimizing performance by removing the acousticechoes resulting from the acoustic coupling between the speaker(s) andthe microphone(s).

Next, the mobile device may obtain the speaker volume settings for theplurality of speakers based on the previously obtained path distanceprofile 1412. That is, the path distance profile provides the locationof each speaker allowing the speaker volume settings to be obtained.

A signal-to-noise ratio (SNR) may then be estimated as a ratio of anear-end user signal to an echo signal based on the path distanceprofile and the volume settings 1414. Based on the estimated SNR, thefar end reference scaling for the echo canceller may be adjusted 1416.

Next, a determination may be made as to whether the SNR is below apre-determined threshold for optimal performance 1418. If the SNR is notbelow the threshold, the echo canceller (i.e. the algorithm) may beexited 1426. However, if it is determined that the SNR is below thepre-determined threshold, the mobile device may send a signal to theaccessory device to reduce or limit the speaker volume 1420. The signalmay be sent to the plurality of speakers. Reducing or limiting thespeaker volume may provide for better double talk performance and avoidnon-linear coupling between the microphone and the speakers.

Next, a determination is made as to whether a louder volume for thespeakers is desired by the user 1422. If louder volume for one or moreof the speakers is not desired, the echo canceller (i.e. the algorithm)may be exited 1426. However, if it is determined that louder volume isdesired for the speakers, visual feedback may be provided to the userinstructing the user to physically adjust, for example increase, themicrophone-to-speaker distance on the accessory device 1424. Asdiscussed above, adjusting the microphone-to-speaker distance mayoptimize the acoustic performance. The visual feedback may be providedto the user on the display of the mobile device. Once visual feedbackhas been provided to the user and the user has adjusted the distance,the echo canceller (i.e. the algorithm) may be exited 1426.

One or more of the components, steps, features and/or functionsillustrated in the FIGS. may be rearranged and/or combined into a singlecomponent, step, feature or function or embodied in several components,steps, or functions. Additional elements, components, steps, and/orfunctions may also be added without departing from novel featuresdisclosed herein. The apparatus, devices, and/or components illustratedin the FIGS. may be configured to perform one or more of the methods,features, or steps described in the FIGS. The novel algorithms describedherein may also be efficiently implemented in software and/or embeddedin hardware.

Also, it is noted that the embodiments may be described as a processthat is depicted as a flowchart, a flow diagram, a structure diagram, ora block diagram. Although a flowchart may describe the operations as asequential process, many of the operations can be performed in parallelor concurrently. In addition, the order of the operations may bere-arranged. A process is terminated when its operations are completed.A process may correspond to a method, a function, a procedure, asubroutine, a subprogram, etc. When a process corresponds to a function,its termination corresponds to a return of the function to the callingfunction or the main function.

Moreover, a storage medium may represent one or more devices for storingdata, including read-only memory (ROM), random access memory (RAM),magnetic disk storage mediums, optical storage mediums, flash memorydevices and/or other machine-readable mediums, processor-readablemediums, and/or computer-readable mediums for storing information. Theterms “machine-readable medium”, “computer-readable medium”, and/or“processor-readable medium” may include, but are not limited tonon-transitory mediums such as portable or fixed storage devices,optical storage devices, and various other mediums capable of storing,containing or carrying instruction(s) and/or data. Thus, the variousmethods described herein may be fully or partially implemented byinstructions and/or data that may be stored in a “machine-readablemedium”, “computer-readable medium”, and/or “processor-readable medium”and executed by one or more processors, machines and/or devices.

Furthermore, embodiments may be implemented by hardware, software,firmware, middleware, microcode, or any combination thereof. Whenimplemented in software, firmware, middleware or microcode, the programcode or code segments to perform the necessary tasks may be stored in amachine-readable medium such as a storage medium or other storage(s). Aprocessor may perform the necessary tasks. A code segment may representa procedure, a function, a subprogram, a program, a routine, asubroutine, a module, a software package, a class, or any combination ofinstructions, data structures, or program statements. A code segment maybe coupled to another code segment or a hardware circuit by passingand/or receiving information, data, arguments, parameters, or memorycontents. Information, arguments, parameters, data, etc. may be passed,forwarded, or transmitted via any suitable means including memorysharing, message passing, token passing, network transmission, etc.

The various illustrative logical blocks, modules, circuits, elements,and/or components described in connection with the examples disclosedherein may be implemented or performed with a general purpose processor,a digital signal processor (DSP), an application specific integratedcircuit (ASIC), a field programmable gate array (FPGA) or otherprogrammable logic component, discrete gate or transistor logic,discrete hardware components, or any combination thereof designed toperform the functions described herein. A general purpose processor maybe a microprocessor, but in the alternative, the processor may be anyconventional processor, controller, microcontroller, or state machine. Aprocessor may also be implemented as a combination of computingcomponents, e.g., a combination of a DSP and a microprocessor, a numberof microprocessors, one or more microprocessors in conjunction with aDSP core, or any other such configuration.

The methods or algorithms described in connection with the examplesdisclosed herein may be embodied directly in hardware, in a softwaremodule executable by a processor, or in a combination of both, in theform of processing unit, programming instructions, or other directions,and may be contained in a single device or distributed across multipledevices. A software module may reside in RAM memory, flash memory, ROMmemory, EPROM memory, EEPROM memory, registers, hard disk, a removabledisk, a CD-ROM, or any other form of storage medium known in the art. Astorage medium may be coupled to the processor such that the processorcan read information from, and write information to, the storage medium.In the alternative, the storage medium may be integral to the processor.

Those of skill in the art would further appreciate that the variousillustrative logical blocks, modules, circuits, and algorithm stepsdescribed in connection with the embodiments disclosed herein may beimplemented as electronic hardware, computer software, or combinationsof both. To clearly illustrate this interchangeability of hardware andsoftware, various illustrative components, blocks, modules, circuits,and steps have been described above generally in terms of theirfunctionality. Whether such functionality is implemented as hardware orsoftware depends upon the particular application and design constraintsimposed on the overall system.

The various features of the invention described herein can beimplemented in different systems without departing from the invention.It should be noted that the foregoing embodiments are merely examplesand are not to be construed as limiting the invention. The descriptionof the embodiments is intended to be illustrative, and not to limit thescope of the claims. As such, the present teachings can be readilyapplied to other types of apparatuses and many alternatives,modifications, and variations will be apparent to those skilled in theart.

What is claimed is:
 1. A mobile device comprising: a plurality ofspeakers; a plurality of microphones, wherein a position of at least oneof the plurality of microphones is variably adjustable relative to oneor more of the plurality of speakers; and a processing circuit coupledto the speakers and the plurality of microphones, the processing circuitadapted to: automatically ascertain one or more distances between eachspeaker in the plurality of speakers and each microphone in theplurality of microphones to obtain a speaker-to-microphone path distanceprofile; and adjust an echo canceller using the speaker-to-microphonepath distance profile.
 2. The mobile device of claim 1, wherein theprocessing circuit is adapted to: estimate a distance between eachspeaker and each microphone to ascertain the speaker-to-microphone pathdistance profile.
 3. The mobile device of claim 1, wherein theprocessing circuit is further adapted to: estimate a signal-to-noiseratio (SNR) as a ratio of a near-end user speech signal to an echosignal.
 4. The mobile device of claim 3, wherein the processing circuitis further adapted to: adjust far end reference scaling for the echocanceller based on the estimated signal-to-noise ratio.
 5. The mobiledevice of claim 3, wherein the processing circuit is further adapted to:reduce or limit speaker volume if the signal-to-noise ratio is below athreshold.
 6. The mobile device of claim 3, wherein the processingcircuit is further adapted to: provide a visual indicator to a user toincrease speaker-to-microphone distance in order to increase at leastone speaker volume.
 7. The mobile device of claim 1, wherein at leastsome of the plurality of speakers are detachable from the mobile device.8. The mobile device of claim 1, further comprising: one or moreextendable and/or rotationally adjustable arms housing at least one ofthe microphones.
 9. The mobile device of claim 1, wherein the one ormore distances between each speaker and each microphone is received froman accessory device, the accessory device having one or more extendableand/or rotationally adjustable arms housing at least one of themicrophones.
 10. The mobile device of claim 9, wherein predefineddetents in the one or more extendible and/or rotationally adjustablearms are used to determine the one or more distances between eachspeaker and each microphone.
 11. The mobile device of claim 9, whereinangular rotation sensors in the one or more extendible and/orrotationally adjustable arms are used to determine the one or moredistances between each speaker and each microphone.
 12. A methodoperational on a mobile device for optimizing audio processingfunctions, comprising: automatically ascertaining one or more distancesbetween each speaker in a plurality of speakers and each microphone in aplurality of microphones to obtain a speaker-to-microphone path distanceprofile; and adjusting an echo canceller using the speaker-to-microphonepath distance profile.
 13. The method of claim 12, further comprising:automatically obtaining speaker volume settings; and estimating asignal-to-noise ratio and associated non-linearity based on thespeaker-to-microphone distance profile and volume settings.
 14. Themethod of claim 13, further comprising: adjusting far end referencescaling for the echo canceller based on the estimated signal-to-noiseratio.
 15. The method of claim 13, further comprising: reducing orlimiting speaker volume if the signal-to-noise ratio is below athreshold.
 16. The method of claim 12, further comprising: changing thespeaker-to-microphone path distance profile by adjusting one or moreextendable and/or rotationally adjustable arms housing the plurality ofspeakers.
 17. The method of claim 12, wherein the one or more distancesbetween each speaker and each microphone is received from an accessorydevice, the accessory device having one or more extendable and/orrotationally adjustable arms housing at least one of the microphones.18. The method of claim 17, wherein predefined detents in the one ormore extendible and/or rotationally adjustable arms are used todetermine the one or more distances between each speaker and eachmicrophone.
 19. The method of claim 17, wherein angular rotation sensorsin the one or more extendible and/or rotationally adjustable arms areused to determine the one or more distances between each speaker andeach microphone.
 20. A mobile device comprising: means for automaticallyascertaining one or more distances between each speaker in a pluralityof speakers and each microphone in a plurality of microphones to obtaina speaker-to-microphone path distance profile; and means for adjustingan echo canceller using the speaker-to-microphone path distance profile.21. The mobile device of claim 20, further comprising: means forautomatically obtaining speaker volume settings; and means forestimating a signal-to-noise ratio and associated non-linearity based onthe speaker-to-microphone distance profile and volume settings.
 22. Themobile device of claim 21, further comprising: means for adjusting farend reference scaling for the echo canceller based on the estimatedsignal-to-noise ratio.
 23. The mobile device of claim 21, furthercomprising: means for reducing or limiting speaker volume if thesignal-to-noise ratio is below a threshold.
 24. The mobile device ofclaim 20, further comprising: means for changing thespeaker-to-microphone path distance profile by adjusting one or moreextendable and/or rotationally adjustable arms housing the plurality ofspeakers.
 25. A non-transitory machine-readable medium havinginstructions stored thereon, which when executed by at least oneprocessor causes the processor to: automatically ascertain one or moredistances between each speaker in a plurality of speakers and eachmicrophone in a plurality of microphones to obtain aspeaker-to-microphone path distance profile; and adjust an echocanceller using the speaker-to-microphone path distance profile.
 26. Thenon-transitory machine-readable medium of claim 25 including furtherinstructions which when executed by the at least one processor causesthe processor to: automatically obtain speaker volume settings; andestimate a signal-to-noise ratio and associated non-linearity based onthe speaker-to-microphone distance profile and volume settings.
 27. Amobile device comprising: a memory device; a communication interfaceadapted to communicate with an accessory device to generate an audioprofile, the accessory device having a plurality of speakers and/or aplurality of microphones for broadcasting or capturing acoustic signalson behalf of the mobile device; a processing circuit, coupled to thecommunication interface and the memory device, the processing circuitadapted to: send a calibration audio signal to the accessory device toestimate a distance between each microphone and each speaker in theaccessory device; receive an estimated distance between each microphoneand each speaker from the accessory device; generate aspeaker-to-microphone path distance profile using estimated distancesbetween each microphone and each speaker in the accessory device; andadjust an echo canceller using the speaker-to-microphone path distanceprofile.
 28. The mobile device of claim 27, wherein the processingcircuit is further adapted to: use captured audio from a user togenerate the speaker-to-microphone path distance profile.
 29. The mobiledevice of claim 27, wherein the calibration audio signal is sent to eachspeaker in the plurality of speakers independently, sequentially, and/orone speaker at a time.
 30. The mobile device of claim 27, wherein theprocessing circuit is further adapted to: estimate a signal-to-noiseratio (SNR) as a ratio of a near-end user speech signal to an echosignal.
 31. The mobile device of claim 30, wherein the processingcircuit is further adapted to: adjust far end reference scaling for theecho canceller based on the estimated signal-to-noise ratio.
 32. Themobile device of claim 27, wherein the processing circuit is furtherconfigured to: obtain speaker volume settings using thespeaker-to-microphone distance profile; and estimate a signal-to-noiseratio and associated non-linearity based on the speaker-to-microphonedistance profile and volume settings.
 33. The mobile device of claim 32,wherein the processing circuit is further adapted to: send a signal tothe accessory device to reduce or limit speaker volume if thesignal-to-noise ratio is below a threshold.
 34. The mobile device ofclaim 33, wherein the processing circuit is further adapted to: providea visual indicator to a user to increase speaker-to-microphone distanceon the accessory device in order to increase volume.
 35. A methodoperational on a mobile device for communicating with an accessorydevice, having a plurality of microphones and/or a plurality ofspeakers, to generate an audio profile, comprising: sending acalibration audio signal to the accessory device to estimate a distancebetween each microphone and each speaker in the accessory device;receiving an estimated distance between each microphone and each speakerfrom the accessory device; generating a speaker-to-microphone pathdistance profile using estimated distances between each microphone andeach speaker in the accessory device; and adjusting an echo cancellerusing the speaker-to-microphone path distance profile.
 36. The method ofclaim 35, further comprising: using captured audio from a user togenerate the speaker-to-microphone path distance profile.
 37. The methodof claim 35, wherein the calibration audio signal is sent to eachspeaker in the plurality of speakers independently, sequentially, and/orone speaker at a time.
 38. The method of claim 35, further comprising:obtaining speaker volume settings using the speaker-to-microphonedistance profile; and estimating a signal-to-noise ratio and associatednon-linearity based on the speaker-to-microphone distance profile andvolume settings.
 39. The method of claim 38, further comprisingadjusting far end reference scaling for the echo canceller based on theestimated signal-to-noise ratio.
 40. The method of claim 39, furthercomprising reducing or limiting speaker volume if the signal-to-noiseratio is below a threshold.
 41. A mobile device, comprising: means forsending a calibration audio signal to an accessory device to estimate adistance between each microphone and each speaker in the accessorydevice; means for receiving an estimated distance between eachmicrophone and each speaker from the accessory device; means forgenerating a speaker-to-microphone path distance profile using estimateddistances between each microphone and each speaker in the accessorydevice; and means for adjusting an echo canceller using thespeaker-to-microphone path distance profile.
 42. The mobile device ofclaim 41, further comprising: means for using captured audio from a userto generate the speaker-to-microphone path distance profile.
 43. Themobile device of claim 41, further comprising: means for automaticallyobtaining speaker volume settings using the speaker-to-microphonedistance profile; and means for estimating a signal-to-noise ratio andassociated non-linearity based on the speaker-to-microphone distanceprofile and volume settings.
 44. The mobile device of claim 43, furthercomprising: means for adjusting far end reference scaling for the echocanceller based on the estimated signal-to-noise ratio.
 45. The mobiledevice of claim 44, further comprising: means for reducing or limitingspeaker volume if the signal-to-noise ratio is below a threshold.
 46. Anon-transitory machine-readable medium having instructions storedthereon, which when executed by at least one processor causes theprocessor to: send a calibration audio signal to an accessory device toestimate a distance between each microphone and each speaker in theaccessory device; receive an estimated distance between each microphoneand each speaker from the accessory device; generate aspeaker-to-microphone path distance profile using estimated distancesbetween each microphone and each speaker in the accessory device; andadjust an echo canceller using the speaker-to-microphone path distanceprofile.
 47. The non-transitory machine-readable medium of claim 46,including further instructions which when executed by the at least oneprocessor causes the processor to: obtain speaker volume settings usingthe speaker-to-microphone distance profile; and estimate asignal-to-noise ratio and associated non-linearity based on thespeaker-to-microphone distance profile and volume settings.